/* See: http://www.webdevout.net/css-hacks 
		http://www.brunildo.org/test/csshacks.html
		http://www.positioniseverything.net/articles/ie7-dehacker.html
		http://centricle.com/ref/css/filters/
*/

/* Serve only to IE 5,6,7 */

/* Doesn't validate */
.ie567 {
	color: red;
}
.ie567 { 
	*color:green;
}

/* Validates */
*:first-child+html .ie567 { /* for IE7 */
	color: green;
}
* html .ie567 { /* for IE 5,6 */
	color: green;
}


/* Serve only to IE 5,6 
   -------------------- */
.ie56 {
	color: red;
	_color: green;
}

/* OR */
.ie56 {
	color: red;
	color: green !important;
}

/* OR */
.ie56 {
	color: red;
}
* html .ie56 {
	color:  green;
}

/* Serve only to IE 6,7 */
* html .ie67 {
	c\olor: green; /* Show in IE6. Hide from IE5. */
}
*:first-child+html .ie67 {
	color: green;
}

.ie67 {
	color: red;
}

/* Serve only to IE 6 */
.ie6 {
 	color: red; /* Show in all other browsers */
}
* html .ie6 {
	c\olor: green; /* Show in IE6. Hide from IE5. */
}



/* Serve only to IE 7 */
.ie7 {
	color: red;
}
*+html .ie7 {
	color: green;
}


/* Serve only to IE 7 and modern browsers */

.ie7Modern {
	color: red;
}
html>body .ie7Modern {
	color: green;
}

/* OR */
.ie7Modern {
	color: red;
}
html>body .ie7Modern {
	color: green;
}


/* Serve only to modern browsers, not IE7 or below */
.modern {
	color: red;
}
html>/**/body .modern {
	color: green;
}



/* To give hasLayout 

http://reference.sitepoint.com/css/haslayout
http://www.satzansatz.de/cssd/onhavinglayout.html
http://www.communitymx.com/content/article.cfm?page=2&cid=C37E0
http://www.positioniseverything.net/articles/haslayout.html
*/

/* IE 6,7 */
.hasLayout {
	zoom: 1;
}

/* IE 5,6 (hide from 7) */
.hasLayout {
	height: 1%;
}

/* To get display: inline-block behavior 

http://www.brunildo.org/test/InlineBlockLayout.html
http://www.brunildo.org/test/inline-block.html
http://www.brunildo.org/test/BackgroundBorderLayout.html
*/

/* on inline elements */
/* in all IE 5+ */
span.inline-block {
	zoom: 1; /* give hasLayout in IE6+ without setting dimensions */
	height: 0; /* give hasLayout in IE5+ */
}
/* in IE 6+ */
span.inline-block {
	/* only actually sets display to inline-block in IE7+.
	   IE6 makes inline elements with hasLayout behave like
	   they have display:inline-block.
	*/
	display: inline-block; 
}

/* on block elements */
/* in IE 5,6,7 (hide from 8+) 
   The two separate rules are necessary. Won't work if one rule.
   IE <7 don't actually support display:inline-block, but that will
   set hasLayout. You then need to set display:inline after to create
   an inline-block behavior.
*/
div.inline-block {
	display: inline-block;
}
div.inline-block {
	display: inline;
}



/* Fix min-height, min-width, max-height, max-width */


/* Fix position:fixed */